摘自C#入门经典(第七版)——第八章
对象和类
对象是OOP 应用程序的组成部件。类 是用于实例化对象的类型定义。* 对象可以包含数据,提供其他代码可以使用的操作。数据 可以通过属性提供外部代码使用,操作可以通过方法提供外部代码使用。
属性和方法称为类的成员。属性可以进行读取访问、写入访问或读写访问。类成员可以是公共的(可用于所有代码)或私有的(只有类定义中的代码可以使用)。在.NET中,所有的东西都是对象
对象的生命周期
对象通过调用它的一个构造函数来实例化。不再需要对象时,就执行其构析函数,以删除它。
重点:要清理对象,常常需要手工删除它。
静态成员和实例成员
实例成员只能在类的对象实例上使用,静态成员只能直接通过类定义使用,它不与实例关联。
接口
接口 是可以在类上实现的公共属性和方法的集合。可将 实现了一个接口的类*的对象赋值给对应实例类型的变量。之后通过改变量,可以使用该接口定义的成员。
继承
继承 是一个类定义派生于另一个类定义的机制。 类从其父类中继承成员,每个类都只能有一个父类。子类不能访问父类的私有成员,但可以定义受保护的成员,受保护的成员只能在该类和派生于该类的子类中使用 。子类可以重写父类中的虚拟成员。所有的类都有一个以System.Object结尾的继承链,在C#中,System.Object有一个别名object
多态性
从一个派生类实例化的所有对象都可以看成其父类的实例。
对象关系和特性
对象可以包含其他对象,也可以表示其他对象的集合。 要在表达式中处理对象,常常要通过运算符重载,定义运算符如何处理对象。 对象可以提供事件,事件因某种内部处理而被触发,客户端代码通过提供事件处理程序来响应事件